Reading Time: 1 minutes
最近、改めて注目を浴びる機会の多いIT運用監視。その最も基礎となるのが「SNMP」です。ネットワーク監視の経験がある方、またはその方法を調べている方なら一度は必ず聞いたことがあるのではないでしょうか。
ネットワーク監視のための技術は、SNMPのほかにも、色々な方法が存在していることをご存じでしょうか。
今回は、ネットワーク機器の監視に使用される技術の中から「SNMP」「NetFlow」「sFlow」をピックアップし、その違いや設定方法をご紹介します。
SNMP・NetFlow・sFlowそれぞれの特徴
SNMP(Simple Network Management Protocol)は、UDP/IPベースのネットワーク監視・ネットワーク管理用プロトコルです。ネットワーク機器に対しては、機器の状態監視・リソース監視・パフォーマンス監視・トラフィック監視などに使用されるほか、サーバーに対してもCPU・メモリー・ディスク・プロセス監視などが可能です。
NetFlowは、Cisco(シスコ)社が通信の内訳情報を可視化することを目的に開発した技術で、基本的にはCiscoのインターネットワーキング・オペレーティング・システム(IOS)で使用されます。
sFlowは、ネットワークトラフィックの監視を目的としてInMon社が仕様作成した技術です。RFCの形で仕様が公開されているため、様々なスイッチングハブ(スイッチ)やルーターで利用されています。
SNMP・NetFlow・sFlowの違い
トラフィック監視におけるそれぞれの技術の大きな違いは、SNMPはトラフィックの総量を取得できるのに対し、NetFlowとsFlowはトラフィックの内訳を監視できることにあります。
その中でもNetFlowとsFlowの技術的な違いは、フローデータの生成方法です。
sFlowは、一部のパケットを参照(サンプリング)してフローデータを生成する一方で、NetFlowはすべてのパケットを参照してフローデータを生成します。なお、NetFlowは、オプションとしてサンプリングも選択可能です。
また、NetFlowとsFlowは、動作するレイヤーも異なります。sFlowはレイヤー2とレイヤー3で作動可能であり、IPプロトコルは勿論、IPX・Appletalk・XNSなどの非IPプロトコルも含めてほとんどすべてのネットワークトラフィックを監視できます。
一方でNetFlowは、主にIPトラフィックを対象としています(NetFlow v9からはMACアドレスも監視可能)。
これらを表にまとめると以下の通りです。
SNMP | sFlow | NetFlow | |
---|---|---|---|
特徴 | RFC1215で定義されたネットワーク監視・管理用プロトコル | RFC3176で定義されたトラフィック監視技術 | Cisco社のトラフィック監視技術 |
監視対象 | 機器の状態・リソース・パフォーマンス・トラフィック等 | トラフィック | トラフィック |
トラフィック監視における特徴 | トラフィックの総量を監視 | 一部のパケットをサンプリングしてフローデータを生成 | すべてのパケットを参照(またはサンプリング)してフローデータを生成 |
解析対象 | SNMPエージェント(エンティティ)が保有するデータ | レイヤー2・レイヤー3トラフィック | IPトラフィック・MACアドレス |
関連記事:sFlow技術序論/NetFlowとの比較【トラフィック解析の基本知識】
SNMP・NetFlow・sFlowの設定方法
設定方法の一例として、Cisco社製のネットワーク機器におけるSNMP・NetFlow・sFlowの設定方法をご紹介します。
SNMPの設定方法
Cisco社製のネットワーク機器でSNMPを有効化する手順は以下の通りです。
#conf t
「conf t」(configure terminal)コマンドを実行してグローバルコンフィギュレーションモードに移行したあと、SNMPを有効化するコマンドを実行します。
SNMPv1、SNMPv2cの場合
(config)#snmp-server community 任意のSNMPコミュニティ ro
認証のためのコミュニティ名を設定します。「任意のSNMPコミュニティ」には、任意の文字列を設定します。
最後の「ro」は、読み取り専用(Read Only)を意味します。設定を変更するなどの管理に使用する場合は「rw」に変更してください。
SNMPv3の場合
(config)#snmp-server group グループ名 v3 auth
(config)#snmp-server user ユーザー名 グループ名 v3 auth md5 パスワード
SNMPv3ではユーザー名とパスワードにより認証を行います。「グループ名」「ユーザー名」「パスワード」には任意の文字列を指定してください。
※2行目のグループ名は、1行目で指定したグループ名を入力
上記設定後、必要に応じてランニングコンフィグをスタートアップコンフィグにコピーします。
以上でIOS機器のSNMPの設定は完了です。
NetFlow・sFlowの設定方法
Cisco社製のネットワーク機器でNetFlowを有効化する手順は以下の通りです。
#conf t
(config)#interface インターフェース インターフェース番号
(config-if)#ip flow ingress
(config-if)#exit
(config)#ip flow-export destination フローコレクターのIPアドレス フロー受信ポート
(config)#ip flow-export source インターフェース インターフェース番号
(config)#ip flow-export version NetFlowのバージョン
(config)#ip flow-cache timeout active 1
(config)#ip flow-cache timeout inactive 15
(config)#snmp-server ifindex persist
その他のベンダー・ネットワーク機器へのNetFlow・sFlowの設定につきましては、こちらのページをご確認いただくか、もしくはご利用の機器のベンダーにお問い合わせください。
ネットワーク監視におけるSNMP・NetFlow・sFlowの使い分け
SNMPは、SNMPエージェントからSNMPマネージャに集められた機器のデータを参照することで、ネットワーク機器やサーバーのリソース(CPU使用率など)監視、プロセス監視などが可能になるほか、SNMPトラップを設定することで機器の異常状態などを把握することも可能です。
トラフィック監視の分野においては、SNMPはトラフィックの総量を監視可能ですが、それ以上の細かい情報を読み取ることができません。例えば、突然インターフェースのトラフィック量が上昇した場合に、どのような通信が多かったのか・どの端末がその通信を行っていたのかなどの詳細な原因調査をすることは困難です。
一方、NetFlowやsFlowのフローデータは、SNMPと同じくトラフィックの総量が測定できるほか、トラフィックの詳細についても確認することが可能です。どの時刻に・どのIPアドレスが・どのアプリケーションを使用した通信を行っていたのかなどの詳細情報を見ることができます。
ネットワーク監視においては、機器のパフォーマンスからトラフィックの内訳までを幅広く監視するために、SNMPとNetFlowまたはsFlowを併用することが望ましいでしょう。
ManageEngineでは、スイッチやルーターなどのネットワーク機器を、SNMPとNetFlow・sFlowの両方で監視が可能な統合ネットワーク管理ソフトウェア「OpManager Plus」を提供しています。
手間をかけずにネットワーク機器の監視をより細かく実施する方法をお探しの場合は、是非ManageEngineをご検討ください。
抜け漏れないネットワーク監視を実現「OpManager Plus」
ManageEngine OpManager Plus(マネージエンジン オーピーマネージャープラス)は、企業ネットワークの管理に必要なソリューションを1つのソフトウェアで網羅したコストパフォーマンスの高いネットワーク管理ソフトウェアです。
ネットワーク監視、ネットワークトラフィック解析、ファイアーウォールログ解析、ネットワーク機器コンフィグ管理、IPアドレス管理、スイッチポート管理などの機能をデフォルトで実装し、多彩なユーザーインタ―フェースやドラック&ドロップでの操作など、ユーザビリティが高いのが特徴です。
まずはSNMPでネットワーク監視するなら「OpManager」
マルチベンダー環境のITインフラをエージェントレスで監視するパッケージソフト。わかりやすい管理画面で誰でも簡単に運用できます。
NetFlow・sFlowでトラフィック監視を始めるなら「NetFlow Analyzer」
通信の詳細な情報を分析し、「いつ・誰が・どんな通信を・どれだけ行ったか」を可視化します。
「帯域利用状況の可視化」、「ネットワーク障害の事前検知」、「帯域圧迫の原因究明」といった用途で、国内5,000以上のダウンロードをいただいた人気のツールです。
フィードバックフォーム
当サイトで検証してほしいこと、記事にしてほしい題材などありましたら、以下のフィードバックフォームよりお気軽にお知らせください。